CC = gcc
AS = nasm
LD = ld

CFLAGS  = -Wall -Werror
ASFLAGS = -felf

GDB = -ggdb

BIN = oc2

OBJS = calcular_longitud_codificacion.o cargar_arbol_huffman.o  cargar_tabla_codigo_desde_buffer.o comprimir_archivo.o  comprimir_buffer.o  crear_arbol_huffman.o crear_lista_huffman.o  descomprimir_archivo.o descomprimir_buffer.o  generar_codificacion.o generar_codigo.o  generar_tabla_apariciones.o  generar_tabla_codigos.o lista_insertar_ordenado.o lista_obtener_primero.o

.PHONY = all clean

all: clean main

%.o: %.asm
	$(AS) $(GDB) $(ASFLAGS) -o $@ $<

main: $(OBJS)
	$(CC) $(GDB) $(CFLAGS) $(OBJS) -o $(BIN) main.c

clean:
	rm -rf ./*.o
	rm -rf ./$(BIN)
